Automatically Improving SAT Encoding of Constraint Problems Through Common Subexpression Elimination in Savile Row
نویسندگان
چکیده
Abstract. The formulation of a Propositional Satisfiability (SAT) problem instance is vital to efficient solving. This has motivated research on preprocessing, and inprocessing techniques where reformulation of a SAT instance is interleaved with solving. Preprocessing and inprocessing are highly effective in extending the reach of SAT solvers, however they necessarily operate on the lowest level representation of the problem, the raw SAT clauses, where higher-level patterns are difficult and/or costly to identify. Our approach is different: rather than reformulate the SAT representation directly, we apply automated reformulations to a higher level representation (a constraint model) of the original problem. Common Subexpression Elimination (CSE) is a family of techniques to improve automatically the formulation of constraint satisfaction problems, which are often highly beneficial when using a conventional constraint solver. In this work we demonstrate that CSE has similar benefits when the reformulated constraint model is encoded to SAT and solved using a state-of-the-art SAT solver. In some cases we observe speed improvements of over 100 times.
منابع مشابه
Automatically improving constraint models in Savile Row
When solving a combinatorial problem using Constraint Programming (CP) or Satisfiability (SAT), modelling and formulation are vital and difficult tasks. Even an expert human may explore many alternatives in modelling a single problem. We make a number of contributions in the automated modelling and reformulation of constraint models. We study a range of automated reformulation techniques, findi...
متن کاملAutomatically Improving Constraint Models in Savile Row through Associative-Commutative Common Subexpression Elimination
When solving a problem using constraint programming, constraint modelling is widely acknowledged as an important and difficult task. Even a constraint modelling expert may explore many models and spend considerable time modelling a single problem. Therefore any automated assistance in the area of constraint modelling is valuable. Common sub-expression elimination (CSE) is a type of constraint r...
متن کاملEnhancing Constraint Models of Planning Problems by Common Subexpression Elimination
Constraint Programming is an attractive approach for solving AI planning problems by modelling them as Constraint Satisfaction Problems (CSPs). However, formulating effective constraint models of complex planning problems is challenging, and CSPs resulting from standard approaches often require further enhancement to perform well. Common subexpression elimination is a general technique for impr...
متن کاملConstraint Model Enhancement by Automated Common Subexpression Elimination
The modelling bottleneck in Constraint Modelling prevents the widespread use of Constraint Programming techniques. Automated Constraint Modelling addresses this problem. To enhance automatically generated models, we eliminate common subexpressions during the modelling process, as compilers do when compiling source code. Common subexpression elimination can lead to a dramatic reduction in the si...
متن کاملCommon Subexpression Elimination in Automated Constraint Modelling
Typically, there are many alternative models of a given problem as a constraint satisfaction problem, and formulating an effective model requires a great deal of expertise. To reduce this bottleneck, automated constraint modelling systems allow the abstract specification of a problem, which can then be refined automatically to a solver-independent modelling language. The final step is to tailor...
متن کامل